/*
 * File: carrary.h
 *
 * Code generated for Simulink model 'carrary'.
 *
 * Model version                  : 1.2
 * Simulink Coder version         : 9.0 (R2018b) 24-May-2018
 * C/C++ source code generated on : Sun May 16 00:50:06 2021
 *
 * Target selection: ert.tlc
 * Embedded hardware selection: ARM Compatible->ARM Cortex
 * Code generation objectives: Unspecified
 * Validation result: Not run
 */

#ifndef RTW_HEADER_carrary_h_
#define RTW_HEADER_carrary_h_
#include <math.h>
#include <string.h>
#ifndef carrary_COMMON_INCLUDES_
# define carrary_COMMON_INCLUDES_
#include "rtwtypes.h"
#include "rtw_continuous.h"
#include "rtw_solver.h"
#endif                                 /* carrary_COMMON_INCLUDES_ */

#include "carrary_types.h"

/* Macros for accessing real-time model data structure */
#ifndef rtmGetErrorStatus
# define rtmGetErrorStatus(rtm)        ((rtm)->errorStatus)
#endif

#ifndef rtmSetErrorStatus
# define rtmSetErrorStatus(rtm, val)   ((rtm)->errorStatus = (val))
#endif

#ifndef rtmGetT
# define rtmGetT(rtm)                  (rtmGetTPtr((rtm))[0])
#endif

#ifndef rtmGetTPtr
# define rtmGetTPtr(rtm)               ((rtm)->Timing.t)
#endif

/* Block states (default storage) for system '<Root>' */
typedef struct {
  struct {
    void *TimePtr;
    void *DataPtr;
    void *RSimInfoPtr;
  } FromWorkspace_PWORK;               /* '<Root>/From Workspace' */

  struct {
    int_T PrevIndex;
  } FromWorkspace_IWORK;               /* '<Root>/From Workspace' */
} DW_carrary_T;

/* External outputs (root outports fed by signals with default storage) */
typedef struct {
  real_T Out1[199];                    /* '<Root>/Out1' */
} ExtY_carrary_T;

/* Real-time Model Data Structure */
struct tag_RTM_carrary_T {
  const char_T * volatile errorStatus;
  RTWSolverInfo solverInfo;

  /*
   * Timing:
   * The following substructure contains information regarding
   * the timing information for the model.
   */
  struct {
    uint32_T clockTick0;
    time_T stepSize0;
    SimTimeStep simTimeStep;
    time_T *t;
    time_T tArray[1];
  } Timing;
};

/* Block states (default storage) */
extern DW_carrary_T carrary_DW;

/* External outputs (root outports fed by signals with default storage) */
extern ExtY_carrary_T carrary_Y;

/* Model entry point functions */
extern void carrary_initialize(void);
extern void carrary_step(void);
extern void carrary_terminate(void);

/* Real-time Model object */
extern RT_MODEL_carrary_T *const carrary_M;

/*-
 * The generated code includes comments that allow you to trace directly
 * back to the appropriate location in the model.  The basic format
 * is <system>/block_name, where system is the system number (uniquely
 * assigned by Simulink) and block_name is the name of the block.
 *
 * Use the MATLAB hilite_system command to trace the generated code back
 * to the model.  For example,
 *
 * hilite_system('<S3>')    - opens system 3
 * hilite_system('<S3>/Kp') - opens and selects block Kp which resides in S3
 *
 * Here is the system hierarchy for this model
 *
 * '<Root>' : 'carrary'
 */
#endif                                 /* RTW_HEADER_carrary_h_ */

/*
 * File trailer for generated code.
 *
 * [EOF]
 */
